<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    
</body>
<script>
    // test() 用规则检索字符串,判断字符串中是否存在符合规则的字符
    // exec() 用规则检索字符串,判断字符串中是否存在符合规则的字符,将符合规则的内容提取出来放到数组中
    
    // 没有添加修饰符g => 默认从下标为0的位置开始匹配, 找到满足条件的字符串既返回true 
    // var str = "good good study , day day up";
    // var reg = /day/i;

    // console.log(reg.test(str));  
    // console.log(reg.test(str));  
    // console.log(reg.test(str));  
    // console.log(reg.test(str));  

    // 添加修饰符g => 全局匹配  =>  默认从下标为0的位置开始匹配, 找到满足条件的字符串既返回true,并记录下次开始的位置,下次调用继续向后匹配,找到满足条件的字符串既返回true,否则返回false(下标也会被重置为0)
    // var str = "good good study , day day up";
    // var reg = /day/ig;

    // console.log(reg.lastIndex,reg.test(str));  
    // console.log(reg.lastIndex,reg.test(str));  
    // console.log(reg.lastIndex,reg.test(str));  
    // console.log(reg.lastIndex,reg.test(str));  
    // console.log(reg.lastIndex,reg.test(str));  
    // console.log(reg.lastIndex,reg.test(str));  
    // console.log(reg.lastIndex,reg.test(str));  
    // console.log(reg.lastIndex,reg.test(str));  
    // console.log(reg.lastIndex,reg.test(str));  
    // console.log(reg.lastIndex,reg.test(str));  
    // console.log(reg.lastIndex,reg.test(str));  
    // console.log(reg.lastIndex,reg.test(str));  




    // var str = "good good study , day day up";
    // var reg = /day/ig;

    // console.log(reg.lastIndex,reg.exec(str));  
    // console.log(reg.lastIndex,reg.exec(str));  
    // console.log(reg.lastIndex,reg.exec(str));  
    // console.log(reg.lastIndex,reg.exec(str));  
    // console.log(reg.lastIndex,reg.exec(str));  
    // console.log(reg.lastIndex,reg.exec(str));  
    // console.log(reg.lastIndex,reg.exec(str));  
    // console.log(reg.lastIndex,reg.exec(str));  
    // console.log(reg.lastIndex,reg.exec(str));  
    // console.log(reg.lastIndex,reg.exec(str));  
    // console.log(reg.lastIndex,reg.exec(str));  
    // console.log(reg.lastIndex,reg.exec(str));  



    var str = "aaaaaabbbbbbbcccccccddddddddd"

    // 贪婪匹配(默认)
    // 重复性的量词默认具有贪婪性 => 在条件允许的情况下 默认匹配尽可能多的

    // 贪婪的无限性
    // console.log(/\w+/.exec(str));
    // console.log(/\w*/.exec(str));
    // console.log(/\w{2,}/.exec(str));

    // 贪婪的有限性
    // console.log(/\w?/.exec(str));
    // console.log(/\w{2,5}/.exec(str));


    // 惰性匹配  => 正则匹配机制默认都是贪婪匹配  => 如何变为惰性匹配 在重复的量词之后加?  =>  在条件允许的情况下 默认匹配尽可能多的

    console.log(/\w+?/.exec(str));
    console.log(/\w*?/.exec(str));
    console.log(/\w{2,}?/.exec(str));



</script>
</html>